[INFO] cloning repository https://github.com/MarcBrejner/tree-sitter-twenty
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/MarcBrejner/tree-sitter-twenty" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMarcBrejner%2Ftree-sitter-twenty", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMarcBrejner%2Ftree-sitter-twenty'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] baeced6c5a96093df330b75d50cd30ad3397ab4c
[INFO] checking MarcBrejner/tree-sitter-twenty against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMarcBrejner%2Ftree-sitter-twenty" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/MarcBrejner/tree-sitter-twenty on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/MarcBrejner/tree-sitter-twenty
[INFO] finished tweaking git repo https://github.com/MarcBrejner/tree-sitter-twenty
[INFO] tweaked toml for git repo https://github.com/MarcBrejner/tree-sitter-twenty written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/MarcBrejner/tree-sitter-twenty already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tiny_http v0.8.0
[INFO] [stderr]   Downloaded utf8-width v0.1.4
[INFO] [stderr]   Downloaded html-escape v0.2.6
[INFO] [stderr]   Downloaded smallbitvec v2.5.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5d51bfd4bf2d56dd34779742d3305aabe85fc586103bff75498df863b2082a2f
[INFO] running `Command { std: "docker" "start" "-a" "5d51bfd4bf2d56dd34779742d3305aabe85fc586103bff75498df863b2082a2f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5d51bfd4bf2d56dd34779742d3305aabe85fc586103bff75498df863b2082a2f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5d51bfd4bf2d56dd34779742d3305aabe85fc586103bff75498df863b2082a2f", kill_on_drop: false }`
[INFO] [stdout] 5d51bfd4bf2d56dd34779742d3305aabe85fc586103bff75498df863b2082a2f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a6e993fd4637d7601759a7b661363a3ceda218ccbfbbd94fadb4236aa97e2e4b
[INFO] running `Command { std: "docker" "start" "-a" "a6e993fd4637d7601759a7b661363a3ceda218ccbfbbd94fadb4236aa97e2e4b", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.86
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling proc-macro2 v1.0.24
[INFO] [stderr]    Compiling unicode-xid v0.2.1
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling serde v1.0.123
[INFO] [stderr]    Compiling syn v1.0.60
[INFO] [stderr]     Checking once_cell v1.7.0
[INFO] [stderr]    Compiling cc v1.0.67
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]     Checking regex-syntax v0.6.22
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking spin v0.7.1
[INFO] [stderr]    Compiling ryu v1.0.5
[INFO] [stderr]    Compiling anyhow v1.0.40
[INFO] [stderr]    Compiling serde_json v1.0.63
[INFO] [stderr]     Checking hashbrown v0.9.1
[INFO] [stderr]     Checking tinyvec_macros v0.1.0
[INFO] [stderr]     Checking matches v0.1.8
[INFO] [stderr]     Checking itoa v0.4.7
[INFO] [stderr]     Checking tinyvec v1.1.1
[INFO] [stderr]    Compiling getrandom v0.2.2
[INFO] [stderr]     Checking thread_local v1.1.3
[INFO] [stderr]    Compiling serde_derive v1.0.123
[INFO] [stderr]     Checking unicode-bidi v0.3.4
[INFO] [stderr]     Checking percent-encoding v2.1.0
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling indexmap v1.6.1
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling tree-sitter-loader v0.19.0 (/opt/rustwide/workdir/cli/loader)
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]     Checking form_urlencoded v1.0.1
[INFO] [stderr]     Checking aho-corasick v0.7.15
[INFO] [stderr]     Checking libloading v0.7.0
[INFO] [stderr]     Checking unicode-width v0.1.8
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking ascii v1.0.0
[INFO] [stderr]     Checking utf8-width v0.1.4
[INFO] [stderr]     Checking either v1.6.1
[INFO] [stderr]     Checking strsim v0.8.0
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]     Checking chunked_transfer v1.4.0
[INFO] [stderr]     Checking unicode-normalization v0.1.17
[INFO] [stderr]     Checking dirs-sys v0.3.5
[INFO] [stderr]     Checking time v0.1.43
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking dirs v3.0.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.10
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking walkdir v2.3.1
[INFO] [stderr]     Checking rand_core v0.6.2
[INFO] [stderr]     Checking which v4.1.0
[INFO] [stderr]     Checking html-escape v0.2.6
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking webbrowser v0.5.5
[INFO] [stderr]     Checking smallbitvec v2.5.0
[INFO] [stderr]     Checking ansi_term v0.12.1
[INFO] [stderr]    Compiling tree-sitter v0.20.0 (/opt/rustwide/workdir/lib)
[INFO] [stderr]     Checking glob v0.3.0
[INFO] [stderr]     Checking difference v2.0.0
[INFO] [stderr]     Checking remove_dir_all v0.5.3
[INFO] [stderr]     Checking rand_chacha v0.3.0
[INFO] [stderr]     Checking rand v0.8.3
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking idna v0.2.2
[INFO] [stderr]     Checking regex v1.4.3
[INFO] [stderr]     Checking url v2.2.1
[INFO] [stderr]     Checking tempfile v3.2.0
[INFO] [stderr]     Checking tiny_http v0.8.0
[INFO] [stderr]    Compiling toml v0.5.8
[INFO] [stderr]     Checking tree-sitter-config v0.19.0 (/opt/rustwide/workdir/cli/config)
[INFO] [stderr]    Compiling thiserror-impl v1.0.25
[INFO] [stderr]    Compiling tree-sitter-cli v0.20.0 (/opt/rustwide/workdir/cli)
[INFO] [stderr]     Checking thiserror v1.0.25
[INFO] [stderr]     Checking tree-sitter-highlight v0.20.0 (/opt/rustwide/workdir/highlight)
[INFO] [stderr]     Checking tree-sitter-tags v0.20.0 (/opt/rustwide/workdir/tags)
[INFO] [stdout] warning: field `value_range` is never read
[INFO] [stdout]   --> tags/src/lib.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 83 | struct LocalDef<'a> {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] 84 |     name: &'a [u8],
[INFO] [stdout] 85 |     value_range: Range<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LocalDef` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `value_range` is never read
[INFO] [stdout]   --> tags/src/lib.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 83 | struct LocalDef<'a> {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] 84 |     name: &'a [u8],
[INFO] [stdout] 85 |     value_range: Range<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LocalDef` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> highlight/src/lib.rs:589:21
[INFO] [stdout]     |
[INFO] [stdout] 589 |                     &self.layers[0..(i + 1)].rotate_left(1);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 589 |                     let _ = &self.layers[0..(i + 1)].rotate_left(1);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> highlight/src/lib.rs:589:21
[INFO] [stdout]     |
[INFO] [stdout] 589 |                     &self.layers[0..(i + 1)].rotate_left(1);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 589 |                     let _ = &self.layers[0..(i + 1)].rotate_left(1);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> cli/src/generate/prepare_grammar/extract_default_aliases.rs:34:21
[INFO] [stdout]    |
[INFO] [stdout] 34 |                 let mut status = match step.symbol.kind {
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> cli/src/generate/prepare_grammar/extract_tokens.rs:52:21
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 let mut lexical_variable = &mut lexical_variables[index];
[INFO] [stdout]    |                     ----^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `filter` is never read
[INFO] [stdout]  --> cli/src/logger.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct Logger {
[INFO] [stdout]   |        ------ field in this struct
[INFO] [stdout] 4 |     pub filter: Option<String>,
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> cli/src/generate/build_tables/build_lex_table.rs:350:5
[INFO] [stdout]     |
[INFO] [stdout] 350 |     &old_ids_by_new_id[1..].sort_by_key(|id| &table.states[*id]);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 350 |     let _ = &old_ids_by_new_id[1..].sort_by_key(|id| &table.states[*id]);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> cli/src/generate/build_tables/minimize_parse_table.rs:482:9
[INFO] [stdout]     |
[INFO] [stdout] 482 | /         &old_ids_by_new_id.sort_unstable_by_key(|i| {
[INFO] [stdout] 483 | |             // Don't changes states 0 (the error state) or 1 (the start state).
[INFO] [stdout] 484 | |             if *i <= 1 {
[INFO] [stdout] 485 | |                 return *i as i64 - 1_000_000;
[INFO] [stdout] ...   |
[INFO] [stdout] 490 | |             -((state.terminal_entries.len() + state.nonterminal_entries.len()) as i64)
[INFO] [stdout] 491 | |         });
[INFO] [stdout]     | |__________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 482 |         let _ = &old_ids_by_new_id.sort_unstable_by_key(|i| {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&Rule` instead of cloning the inner type
[INFO] [stdout]    --> cli/src/generate/prepare_grammar/extract_tokens.rs:212:75
[INFO] [stdout]     |
[INFO] [stdout] 212 |                         rule: Box::new(self.extract_tokens_in_rule((&rule).clone())),
[INFO] [stdout]     |                                                                           ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 6 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> cli/src/generate/prepare_grammar/extract_default_aliases.rs:34:21
[INFO] [stdout]    |
[INFO] [stdout] 34 |                 let mut status = match step.symbol.kind {
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> cli/src/generate/prepare_grammar/extract_tokens.rs:52:21
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 let mut lexical_variable = &mut lexical_variables[index];
[INFO] [stdout]    |                     ----^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `filter` is never read
[INFO] [stdout]  --> cli/src/logger.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct Logger {
[INFO] [stdout]   |        ------ field in this struct
[INFO] [stdout] 4 |     pub filter: Option<String>,
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> cli/src/generate/build_tables/build_lex_table.rs:350:5
[INFO] [stdout]     |
[INFO] [stdout] 350 |     &old_ids_by_new_id[1..].sort_by_key(|id| &table.states[*id]);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 350 |     let _ = &old_ids_by_new_id[1..].sort_by_key(|id| &table.states[*id]);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> cli/src/generate/build_tables/minimize_parse_table.rs:482:9
[INFO] [stdout]     |
[INFO] [stdout] 482 | /         &old_ids_by_new_id.sort_unstable_by_key(|i| {
[INFO] [stdout] 483 | |             // Don't changes states 0 (the error state) or 1 (the start state).
[INFO] [stdout] 484 | |             if *i <= 1 {
[INFO] [stdout] 485 | |                 return *i as i64 - 1_000_000;
[INFO] [stdout] ...   |
[INFO] [stdout] 490 | |             -((state.terminal_entries.len() + state.nonterminal_entries.len()) as i64)
[INFO] [stdout] 491 | |         });
[INFO] [stdout]     | |__________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 482 |         let _ = &old_ids_by_new_id.sort_unstable_by_key(|i| {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&rules::Rule` instead of cloning the inner type
[INFO] [stdout]    --> cli/src/generate/prepare_grammar/extract_tokens.rs:212:75
[INFO] [stdout]     |
[INFO] [stdout] 212 |                         rule: Box::new(self.extract_tokens_in_rule((&rule).clone())),
[INFO] [stdout]     |                                                                           ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 6 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.67s
[INFO] running `Command { std: "docker" "inspect" "a6e993fd4637d7601759a7b661363a3ceda218ccbfbbd94fadb4236aa97e2e4b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a6e993fd4637d7601759a7b661363a3ceda218ccbfbbd94fadb4236aa97e2e4b", kill_on_drop: false }`
[INFO] [stdout] a6e993fd4637d7601759a7b661363a3ceda218ccbfbbd94fadb4236aa97e2e4b
